Network operators of packet networks have traditionally struggled with monitoring the activity of their subscribers. The nature of packet communication makes controlling and allocating bandwidth among subscribers difficult. Since these networks have finite capacity, resource usage must be monitored to ensure that subscribers are allocated the resources to which they are entitled, and prevent subscribers from using more resources than they are entitled to. Traffic monitoring also allows network operators to detect overall usage patterns, changes in usage patterns, and the like, which aid in managing the packet networks. Such monitoring is generally focused on overall network traffic.
Although the resulting metrics of traditional monitoring are useful, the metrics provide little insight into how subscribers are actually using their allocated bandwidth. Without such knowledge, network operators have less information to aid them in configuring the networks to meet the current and future demands of the subscribers, as well as identify subscribers that are abusing communication privileges. Further, metrics for actual subscriber use could be passed on to service providers who provide services over the packet networks for the subscribers of the network providers. Various metrics related to the type and content of subscriber traffic could lead to enhanced services for the subscribers.
Unfortunately, there is no effective way to collect subscriber usage metrics on an application level. Although current techniques can monitor the physical, datalink, network, and transport layers of the Open Systems Interconnect Reference Model for a computer network (OSI LAYER 1-4), a breakdown of application use on a subscriber-by-subscriber basis is not available. Further, there is no way to monitor traffic content to aid in the analysis of the subscriber traffic. Accordingly, there is a need for an effective and efficient technique to gather and analyze detailed metrics for subscribers at an application layer level.